package app.config;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

/**
 * 该类只用来加载可用模块的信息
 * 该类加载的配置文件purchases.properties在类加载路径下
 * 进行部署配置的时候只需要进行更改简单配置就可以设置可以显示的模块
 * 
 * @author ZHOUCAHO
 *
 */
public class AppConf4Pur {
	/**
	 * 这是用来获取是否可以使用经过该的部分
	 */
	public static final String WELL="WELL";
	/**
	 * 这是用来获取是否可以使用通断电的部分
	 */
	public static final String ELE="ELE";
	/**
	 * 这是用来获取是否可以使用通断电的部分
	 */
	public static final String T="T";
	/**
	 * 这是用来获取是否可以使用门禁的部分
	 */
	public static final String DOOR="DOOR";
	/**
	 * 这是用来获取是否可以使用门禁的部分
	 */
	public static final String METER="METER";
	
	//这用来在类加载的时候进行配置文件加载系统只加载一次如果更改了配置文件需要重新启动系统
	private static Properties properties=new Properties();
	
	//静态代码块在系统气动的时候加载配置文件
	static{
		InputStream configResource = AppConf4Pur.class.getResourceAsStream("/purchases.properties");
		try {
			//加载配置文件
			properties.load(configResource);
			configResource.close();
		} catch (IOException e) {
			System.out.println("产品可用性配置加载失败！");
			e.printStackTrace();
		}
	}
	
	/**
	 * 该方法用来获取指定的模块功能是否可以使用
	 * 
	 * @param purchases
	 * @return
	 */
	public static boolean GetProperty(String purchases){
		return "1".equals(properties.getProperty(purchases).replace(" ", ""));
	}
}
